Responsibilities:
- Participate in the full software development lifecycle, including requirements gathering, design, development, testing, deployment, and maintenance.
- Design, develop, and maintain scalable Windows and web-based applications using current company standards, tools, and best practices.
- Collaborate with product managers, engineers, support staff, and customers to define requirements and design effective solutions.
- Take ownership of complex features or systems from concept through production release.
- Research, diagnose, and resolve complex software defects, including high-impact and escalated customer issues.
- Review code and provide constructive feedback to improve overall code quality, performance, and maintainability.
- Mentor and support junior developers by sharing technical knowledge and best practices.
- Assist with estimation, planning, and prioritization of development tasks and projects.
- Create and maintain technical documentation such as design documentation and developer guides.
- Stay current with industry trends, emerging technologies and best practices, and recommend improvements when appropriate.
Experience
- 4+ years of professional software development experience, or equivalent demonstrated expertise.
- Experience developing Windows and/or web-based applications in a professional environment.
- Experience working directly with customers or stakeholders to gather requirements and deliver solutions.
- Ongoing willingness to learn new technologies and adapt to evolving tools and processes.
- Strong proficiency in software development with a focus on building reliable, maintainable, and scalable solutions.
- Experience designing and implementing applications using Microsoft-based technologies, including C# / .NET.
- Solid understanding of relational databases, particularly SQL Server, including schema design and query optimization.
- Experience with modern web technologies and frameworks (e.g., Angular or similar).
- Proficiency with version control systems such as Git and familiarity with CI/CD pipelines and tools like Azure DevOps.
- Strong analytical, problem-solving, and debugging skills.
- Ability to work independently with minimal supervision while effectively collaborating with a team.
- Strong written and verbal communication skills, including the ability to explain technical concepts to non-technical audiences.
- Passionate about software development and continuously improving their craft.
- Self-motivated, organized, and able to manage multiple priorities in a fast-paced environment.
- Comfortable taking ownership of work and being accountable for outcomes.
- Detail-oriented with a strong commitment to quality and reliability.
- Customer-focused, with an understanding of how technical decisions impact end users.
- Confident yet humble, open to feedback, and willing to mentor others.

